package com.lv.data;

import com.lv.enums.ResultEnum;

public class Result<T> {
    //返回的状态码
    private Integer code;

    //返回的提示信息
    private String message;

    //返回的数据
    private T data;

    public Result() {
    }
    //成功
    public static Result OK(){
        return new Result(ResultEnum.Ok.getDataCode(),ResultEnum.Ok.getDataMessage());
    }
    //失败
    public static Result ER(){
        return new Result(ResultEnum.ER.getDataCode(),ResultEnum.ER.getDataMessage());
    }
    //返回自定义状态码
    public static Result response(ResultEnum re){
        return new Result(re.getDataCode(), re.getDataMessage());
    }

    public Result(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Result(Integer code, String message, T data) {
        this.code = code;
        this.message = message;
        this.data = data;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public T getData() {
        return data;
    }

    public Result setData(T data) {
        this.data = data;
        return this;
    }
}
